#include <iostream>
#include "Animal.h"

void Animal::setAge(int x){
	(*this).age=x;
}
int Animal::getAge()const{
	return (*this).age;
}
std::string Animal::getNume()const{
	return (*this).nume;
}
bool Animal::isGestant(){
	if((*this).sex==male)
		return false;
	if((*this).age<getPerioadaGestatie())
		return false;
	if((*this).age%getPerioadaGestatie())
		return true;
}
void Animal::addAge(int n){
	(*this).age=(*this).age+n;
}
void Animal::setAgeLimit(int x){
	(*this).ageLimit=x;
}
int Animal::getAgeLimit()const{
	return (*this).ageLimit;
}
Gender Animal::getSex()const{
	return (*this).sex;
}
void Animal::setSex(Gender s){
	(*this).sex=s;
}
Animal::Animal* giveBirth(){}
bool Animal::isMale(){
	if((*this).sex==male)
		return true;
}
bool Animal::isFemale(){
	return !isMale();
}
std::ostream& operator<<(std::ostream& out,Animal& right){
	out<<"\nVarsta= "<<right.age<<" Limita de varsta= "<<right.ageLimit<<" Sex= "<<right.sex;
}
void Animal::print(){
	std::cout<<"\nNume= "<<(*this).nume;
	std::cout<<"\nSex= "<<(*this).sex;
	std::cout<<"\nVarsta= "<<(*this).age;
	std::cout<<"\nLimita de varsta= "<<(*this).ageLimit;
}
